package com.tpshion.cloud.auth.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tpshion.cloud.auth.domain.dto.QueryUserDto;
import com.tpshion.cloud.auth.domain.entity.User;
import com.tpshion.cloud.auth.domain.vo.UserDetailVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author tpshion
 * @since 2021-01-16
 */
public interface UserMapper extends BaseMapper<User> {

    /**
     * 根据账号查询用户信息
     * @param account
     * @return
     */
    User findByAccount(@Param("account") String account);

    /**
     * 根据手机号查询用户信息
     * @param phone
     * @return
     */
    List<User> findByPhone(@Param("phone") String phone);

    /**
     * 根据邮箱查询用户信息
     * @param email
     * @return
     */
    List<User> findByEmail(@Param("email") String email);

    /**
     * 查询用户详细信息
     * @param queryUserDto
     * @return
     */
    List<UserDetailVo> getUserList(QueryUserDto queryUserDto);
}
